package com.internetCafes.spms.web.certificate.model;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.internetCafes.spms.web.sys.model.ResourceInfo;
import lombok.Data;

import java.util.Date;
import java.util.List;

@Data
public class EmployeeInfoTestReq {
    /**
     * 基础信息ID
     */
    private Long id;

    /**
     * 类型 1：个人 2：企业 3：机构
     * 版本二：证书类型 保存的时候 1在职员工,2挂靠,3非在职员工
     */
    private Integer type;

    /**
     * 租户id
     */
    private Long tenantId;

    /**
     * 部门id
     */
    private Long deptId;

    /**
     * 姓名
     */
    private String name;

    /**
     * 身份证号
     */
    private String idCard;

    /**
     * 性别 0:未知 1:男 2:女
     */
    private Integer gender;

    /**
     * 年龄
     */
    private Integer age;

    /**
     * 手机号码
     */
    private String mobile;

    /**
     * 学历
     */
    private String academic;

    /**
     * 工作年限
     */
    private Integer workYears;

    /**
     * 毕业学校
     */
    private String schoolName;

    /**
     * 所学专业
     */
    private String schoolProfession;

    /**
     * 是否已婚
     */
    private Integer marriageFlag;

    /**
     * 毕业时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date graduateTime;

    /**
     * 职称
     */
    private String jobGrade;

    /**
     * 工作单位
     */
    private String workUnit;

    /**
     * 工作单位地址
     */
    private String workUnitAddress;

    /**
     * 邮政编码
     */
    private String zipCode;

    /**
     * 考生来源:1：个人 2：企业 3：机构
     */
    private Integer candidatesSource;

    /**
     * 机构名称
     */
    private String orgName;

    /**
     * 机构联系电话
     */
    private String orgContactMobile;

    /**
     * 机构联系人
     */
    private String orgContact;

    /**
     * 企业名称
     */
    private String companyName;

    /**
     * 企业联系人
     */
    private String companyContact;

    /**
     * 企业联系电话
     */
    private String companyContactMobile;

    /**
     * 入职时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date entryTime;

    /**
     * 合同到期时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date contractExpirationTime;

    /**
     * 备注
     */
    private String remark;

    /**
     * 头像
     */
    private String avatarPic;

    /**
     * 更新状态
     */
    private Integer status;

    /**
     * 创建人
     */
    private Long createBy;

    /**
     * 创建时间
     */

    private Date createTime;

    /**
     * 更新者
     */
    private Long updateBy;

    /**
     * 更新时间
     */
    private Date updateTime;

    /**
     * 职位
     */
    private String post;

    /**
     * 是否在职:1在职，0离职
     */
    private Integer onCompanyFlag;

    /**
     * 离职时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date companyEndTime;

    /**
     * 是否为手动录入员工
     */
    private Integer employeeFlag;

    /**
     * 是否交社保,1是,0否
     */
    private Integer socialSecurityFlag;

    /**
     * 参保时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date socialSecurityTime;

    /**
     * 是否是技术负责人
     */
    private Integer directorFlag;

    /**
     * 负责内容
     */
    private String directorFor;

    /**
     * 租户名称
     */
    private String tenantName;

    /**
     * 部门名称
     */
    private String deptName;

    /**
     * 合同照片列表
     */
    private String constractPic;

    /**
     * 合同列表
     */
    private List<ResourceInfo> contractInfoList;


    /**
     * 数量
     */
    private Integer num;


    /**
     * 数量
     */
    private Date expireDate;

    /**
     * 证书数量
     */
    private Long certificateCount;

    /**
     * 非在职员工证书数量
     */
    private Long friendCount;

    private Long totalCertiCount;

    /**
     * 在职时间
     */
    private int onCompanyTime;

    /**
     * 当前用户子账号创建标签 0-未创建 1-已创建
     */
    private Integer accountCreateFlag;

    /**
     * 对应用户id
     */
    private Long userId;

    private Integer page = 1;
    private Integer limit = 2;

}
